iT邦幫忙

2026 iThome 鐵人賽

DAY 1
0
Kubernetes

從看得到到看得懂:30 天在自架 K8s 上實踐可觀測性與告警系列 第 1

Day 1:面試被問可觀測性,我只答得出「看log有沒有error」

  • 分享至 

  • xImage
  •  

起心動念

前陣子在求職的時候常常被問到 k8s 相關的問題,觀測的指標有哪些,但我總是一問三不知,只能說出查看 log 有沒有 error。面試結束後我拼命去查相關的資料,雖然對於 Grafana、SLO 這些名詞有一定的了解,但具體該怎麼用卻沒有很清楚,監控和可觀測性的差別到底是什麼,始終搞不清楚。

在這個 vibe coding 的年代,人人都是開發者,寫程式已經是寫程式中最沒有難度的一塊。只要一直按 yes,程式就會一直不停自己長出來。但我覺得現在開發還是會出現一些說不上是新問題的問題,這些問題一直存在,且困擾著大家,只是現在能夠了解並回答我覺得才是真正有價值的事情。第一個是功能是否真的符合使用者的需求,常常加入了許多酷炫的功能,卻沒有實際解決痛點。你自己會想用自己開發出來的 app 嗎?這是一個很多人要面對的問題。

再來是我們要怎麼監控我們的系統,當開發的系統越來越大,甚至要部署到雲端給更多人使用,往往會產生一種失去掌控的感覺,哪個元件是瓶頸,造成了請求的回應慢了 1 秒,要怎麼監測這點,並進一步的去改善,這點是個人開發者常常會忽略的點。

第一個問題要交給專業的 PM 和詳細的訪談來解決,我想要用 30 天的時間去講清楚第二個問題,在系統中的監控和可觀測性是什麼,我們用筆電開一個 Kubernetes 叢集,並在其中埋下錯誤,接著透過 Prometheus、Grafana、Loki、OpenTelemetry 等工具來一一抓出其中的錯誤,實際了解其用法與監控在系統中的重要性。最後,打造一個 Agent,我們也會用這個方式來拆解該如何觀測 Agent 的工作情形。

30天進度安排

天數 區塊 這幾天要回答什麼
Day 1–4 為什麼 SLI、SLO 與 Error Budget,以及三大支柱(metrics / logs / traces)各自能回答哪一種問題
Day 5–8 地基 用 kind 在筆電開叢集、部署示範服務
Day 9–12 Metrics Prometheus Operator、Grafana、PromQL
Day 13–15 Logs 結構化日誌與 Loki
Day 16–19 Traces OpenTelemetry 與 Collector
Day 20–23 告警 好告警的三個條件、Alertmanager 路由與抑制
Day 24–26 Agent 建 agent 用前面學到的工具進行監控
Day 27–30 IaC 使用 Terraform 與 Helm Day 30 砍掉整個叢集重建一次當驗收

前面我們會一起建立一個故意埋下錯誤的叢集,並利用我們後面學到的工具,逐個故障抓出來。三個故障分別要用log、trace和告警才抓的出來。最後示範agent也可以使用工具來進行觀測。

下期預告

這是我第一次寫文章,有些工具我也是第一次使用,在寫文章的同時學習,如果有錯誤的話歡迎大家指出來,這樣之後閱讀文章的人也會更加的清楚,不會在網路上留下錯誤的資訊,謝謝大家。

接下來day2我們會從SLI、SLO還有 Error Budget 開始講起,在決定要裝什麼之前,先決定要看什麼。


下一篇
Day 2:先講清楚要看什麼:SLI、SLO 與 Error Budget
系列文
從看得到到看得懂:30 天在自架 K8s 上實踐可觀測性與告警3
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言